Aviso
Este artículo de Knowledge Base se proporciona tal cual y no reemplaza los datos de sustitución que se suministran por medio de los canales normales de actualización. La información de sustitución publicada con posterioridad a los datos siguientes se encuentra en la Guía de actualización de seguridad y otras herramientas auxiliares.
Resumen
Consulte los productos a los que afecta este artículo.
La actualización de seguridad MS17-010 aborda varias vulnerabilidades en Windows Server Message Block (SMB) v1. El ransomware WannaCrypt está aprovechando una de las vulnerabilidades que la actualización MS17-010 aborda. Los equipos que no tienen MS17-010 instalado sufren un riesgo mayor debido a que existen varias cepas de este malware. Este artículo proporciona varios métodos rápidos para detectar si el equipo está actualizado.
Método 1: Comprobar el número del Knowledge Base instalado
Utilice la siguiente tabla para buscar cualquiera de las actualizaciones recogidas (excepto aquellas que tienen la indicación "No contiene el parche MS17-010"). Si tiene instalada cualquiera de ellas, quiere decir que MS17-010 está instalado.
Tabla 1 de 2: Windows 7 SP1 y versiones posteriores. Los siguientes paquetes acumulativos de KB contienen la corrección (excepto en la columna "Seguridad de abril Solo 4B"). Bajo cada número de KB aparece el número de versión actualizado de Srv.sys.
Versiones de Windows |
Actualización solo de seguridad de marzo (14/03/17) |
Paquete acumulativo mensual de marzo (14/03/2017) |
Vista previa de marzo del paquete acumulativo mensual (21/3/17) |
Actualización de solo seguridad de abril (11/04/2017) |
Paquete acumulativo mensual de abril (11/04/2017) |
Vista previa de abril del paquete acumulativo mensual (18/4/17) |
Actualización de solo seguridad de mayo (09/05/2017) |
Paquete acumulativo mensual de mayo (09/05/2017) |
Vínculo de descarga |
Windows 7 SP1 y Windows Server 2008 R2 SP1 |
4012212 6.1.7601.23689 |
4012215 6.1.7601.23689 |
4012218 6.1.7601.23689 |
4015546 No contiene el parche MS17-010 |
4015549 6.1.7601.23689 |
4015552 6.1.7601.23689 |
4019263 6.1.7601.23762 |
4019264 6.1.7601.23762 |
|
Windows 2012 |
4012214 6.2.9200.22099 |
4012217 6.2.9200.22099 |
4012220 6.2.9200.22099 |
4015548 No contiene el parche MS17-010 |
4015551 6.2.9200.22099 |
4015554 6.2.9200.22099 |
4019214 6.2.9200.22137 |
4019216 6.2.9200.22137 |
|
Windows 8.1 y Windows Server 2012 R2 |
4012213 6.3.9600.18604 |
4012216 6.3.9600.18604 |
4012219 6.3.9600.18604 |
4015547 No contiene el parche MS17-010 |
4015550 6.3.9600.18604 |
4015553 6.3.9600.18619 |
4019213 6.3.9600.18655 |
4019215 6.3.9600.18655 |
|
Windows 10, versión 1507 |
4012606 10.0.10240.17319 |
4016637 10.0.10240.17319 |
- |
- |
4015221 10.0.10240.17319 |
- |
- |
4019474 10.0.10240.17394 |
|
Windows 10, versión 1511 |
4013198 10.0.10586.839 |
4016636 10.0.10586.839 |
- |
- |
4015219 10.0.10586.839 |
- |
- |
4019473 10.0.10586.916 |
|
Windows 10, versión Windows Server 2016 |
4013429 10.0.14393.953 |
4016635 10.0.14393.953 |
- |
- |
4015217 10.0.14393.953 |
- |
- |
4019472 10.0.14393.1198 |
Tabla 2 de 2: continuación de las actualizaciones de mayo y junio de 2017.
Versiones de Windows |
Versión preliminar del paquete acumulativo mensual de mayo (16/05/2017) |
Actualización de solo seguridad de junio (13/06/2017) |
Paquete acumulativo mensual de junio (13/06/2017) |
Vínculo de descarga |
Windows 7 y Server 2008 R2 |
4019265 6.1.7601.23762
|
4022722 |
4022168 6.1.7601.23762 |
|
Windows Server 2012 |
4019218 6.2.9200.22137 |
4022718 |
4022724 6.2.9200.22137 |
|
Windows 8.1 y Windows Server 2012 R2 |
4019217 6.3.9600.18655 |
4022717 |
4022720 6.3.9600.18688 |
|
Windows 10, versión 1507 |
- |
- |
4032695 |
|
Windows 10, versión 1511 |
- |
- |
4032693 |
|
Windows 10, versión 1607 y Windows Server 2016 |
- |
- |
4022723 10.0.14393.1198 |
Tabla 2: Otras versiones de Windows. Utilice KB 4012598 como actualización de seguridad.
Versiones de Windows |
Número de KB y versión actualizada de Srv.sys |
Vínculo de descarga |
Windows Server 2003 SP2 |
4012598 5.2.3790.6021 |
|
Windows XP |
4012598 5.1.2600.7208 |
Windows XP SP2 x64 Windows XP SP3 x86 Windows XP Embedded SP3 x86 |
Windows Vista SP2 |
4012598 GDR:6.0.6002.19743 LDR:6.0.6002.24067 |
Windows Vista Service Pack 2 Windows Vista x64 Edition Service Pack 2 |
Windows Server 2008 SP2 |
4012598 GDR:6.0.6002.19743 LDR:6.0.6002.24067 |
Windows Server 2008 Service Pack 2 para sistemas de 32 bits Windows Server 2008 Service Pack 2 para sistemas basados en x64 Windows Server 2008 Service Pack 2 para sistemas basados en Itanium |
Windows 8 |
4012598 6.2.9200.22099 |
Tabla 3: actualizaciones adicionales que contienen la corrección.
Windows 8.1 y Windows Server 2012 R2
Fecha de publicación |
Número de KB |
Página de soporte |
21 de marzo de 2017 |
4012219 |
21 de marzo de 2017: KB4012218 (versión preliminar del paquete acumulativo mensual) |
martes, 18 de abril de 2017 |
4015553 |
18 de abril de 2017: KB4015553 (versión preliminar del paquete acumulativo mensual) |
martes, 16 de mayo de 2017 |
4019217 |
16 de mayo de 2017: KB4019217 (versión preliminar del paquete acumulativo mensual) |
martes, 27 de junio de 2017 |
4022720 |
27 de junio de 2017: KB4022720 (versión preliminar del paquete acumulativo mensual) |
Windows Server 2012
Fecha de publicación |
Número de KB |
Página de soporte |
21 de marzo de 2017 |
4012220 |
21 de marzo de 2017: KB4012220 (versión preliminar del paquete acumulativo mensual) |
martes, 18 de abril de 2017 |
4015554 |
18 de abril de 2017: KB4015554 (versión preliminar del paquete acumulativo mensual) |
martes, 16 de mayo de 2017 |
4019218 |
16 de mayo de 2017: KB4019218 (versión preliminar del paquete acumulativo mensual) |
27 de junio de 2017 |
4022721 |
27 de junio de 2017: KB4022721 (versión preliminar del paquete acumulativo mensual) |
Windows 7 SP1 y Windows Server 2008 R2 SP1
Fecha de publicación |
Número de KB |
Página de soporte |
21 de marzo de 2017 |
4012218 |
21 de marzo de 2017: KB4012218 (versión preliminar del paquete acumulativo mensual) |
martes, 18 de abril de 2017 |
4015552 |
18 de abril de 2017: KB4015552 (versión preliminar del paquete acumulativo mensual) |
martes, 16 de mayo de 2017 |
4019265 |
16 de mayo de 2017: KB4019265 (versión preliminar del paquete acumulativo mensual) |
martes, 27 de junio de 2017 |
4022168 |
27 de junio de 2017: KB4022168 (versión preliminar del paquete acumulativo mensual) |
Método 2: Comprobar la versión del archivo %systemroot%\system32\drivers\srv.sys
Utilice la siguiente tabla para comprobar la versión del archivo %systemroot%\system32\drivers\srv.sys. Si la versión del archivo es igual o mayor a la versión indicada, MS17-010 está instalado.
Versiones de Windows |
Versión actualizada mínima de Srv.sys |
Windows XP |
5.1.2600.7208 |
Windows Server 2003 SP2 |
5.2.3790.6021 |
Windows Vista Windows Server 2008 SP2 |
GDR:6.0.6002.19743, LDR:6.0.6002.24067 |
Windows 7 Windows Server 2008 R2 |
6.1.7601.23689 |
Windows 8 Windows Server 2012 |
6.2.9200.22099 |
Windows 8.1 Windows Server 2012 R2 |
6.3.9600.18604 |
Windows 10 TH1 v1507 |
10.0.10240.17319 |
Windows 10 TH2 v1511 |
10.0.10586.839 |
Windows 10 RS1 v1607 Windows Server 2016 |
10.0.14393.953 |
Método 3: comprobación mediante WMI y Windows PowerShell
Utilice WMI y Windows PowerShell para averiguar si las correcciones de MS17-010 están instaladas.
Comando WMI Para buscar un número de KB concreto, abra una ventana elevada del símbolo del sistema y luego ejecute el siguiente comando:
wmic qfe get hotfixid | find "KB1234567"
Notas
-
En este comando sustituya <KB1234567> por el número de KB que desee.
-
Utilice el carácter et (&) para buscar varias actualizaciones. Por ejemplo, ejecute el comando siguiente:
wmic qfe get hotfixid | find "KB4012212" & wmic qfe get hotfixid | find "KB4012215" & wmic qfe get hotfixid | find "KB4015549"
Comandos de PowerShell
Para buscar en el sistema local, ejecute el siguiente cmdlet administrativo de PowerShell:
get-hotfix -id KB1234567
Notas
-
En este comando sustituya <KB1234567> por el número de KB que desee.
-
Utilice una coma (,) para buscar varias actualizaciones. Por ejemplo, ejecute el comando siguiente:
get-hotfix -id KB4012212,KB4012215,KB4015549
Para comprobar todos los equipos en un dominio de Active Directory u OU, ejecute el siguiente cmdlet administrativo de PowerShell en un controlador de dominio:
foreach ( $n in (get-adcomputer -searchbase ‘OU=workstations,dc=contoso,dc=com’ -filter * -property * | select name )) {get-hotfix -computername $n.name -id KB1234567}
NotaLa parte "OU=workstations,dc=contoso,dc=com" se puede cambiar para que apunte a la raíz de una partición de directorio de un dominio de Active Directory, por ejemplo, "dc=contoso,dc=com", para buscar en todos los equipos del dominio. En este comando sustituya <KB1234567> por el número de KB que desee.
Cómo resolver el error de instalación “no aplicable”
Si en los equipos no está instalada alguna solución previa necesaria, es posible que obtenga el siguiente mensaje de error al instalar MS17-010 en Windows 8.1 o Windows Server 2012 R2:
La actualización no es aplicable a su sistema.
Para resolver este error, siga estos pasos:
-
Asegúrese de que está intentando instalar la actualización correcta. Para ello, compruebe el número de KB en la Tabla 1 con el Método 1. Compárelo con la versión, el nivel del Service Pack y el nivel de bits de su sistema (x64, IA64 o x86).
-
Compruebe si falta alguna dependencia. Para Windows 8.1 y Windows Server 2012 R2, instale las soluciones dependientes según sea necesario, de acuerdo con los siguientes artículos:
-
KB 2919355: Actualización para Windows RT 8.1, Windows 8.1 y Windows Server 2012 R2: Abril de 2014
-
KB 2919442: Actualización de la pila de servicio de marzo de 2014 para Windows 8.1 y Windows Server 2012 R2
-
KB 3173424: Actualización de la pila de servicio para Windows 8.1 y Windows Server 2012 R2 12 de julio de 2016
-
-
Si no es capaz de instalar un paquete acumulativo de actualización, pruebe una versión distinta del paquete acumulativo. Consulte en la Tabla 1 las actualizaciones disponibles.
Script de PowerShell
El siguiente script de Windows PowerShell compara la versión de Srv.sys del equipo local con las versiones que figuran en el gráfico del método 2.
Guarde este script en un archivo .ps1 y luego ejecútelo desde PowerShell. Este script se aplica a Windows XP y a Windows Server 2003 y versiones posteriores. Requiere Windows PowerShell 2.0 o una versión posterior.
[reflection.assembly]::LoadWithPartialName("System.Version")
$os = Get-WmiObject -class Win32_OperatingSystem
$osName = $os.Caption
$s = "%systemroot%\system32\drivers\srv.sys"
$v = [System.Environment]::ExpandEnvironmentVariables($s)
If (Test-Path "$v")
{
Try
{
$versionInfo = (Get-Item $v).VersionInfo
$versionString = "$($versionInfo.FileMajorPart).$($versionInfo.FileMinorPart).$($versionInfo.FileBuildPart).$($versionInfo.FilePrivatePart)"
$fileVersion = New-Object System.Version($versionString)
}
Catch
{
Write-Host "Unable to retrieve file version info, please verify vulnerability state manually." -ForegroundColor Yellow
Return
}
}
Else
{
Write-Host "Srv.sys does not exist, please verify vulnerability state manually." -ForegroundColor Yellow
Return
}
if ($osName.Contains("Vista") -or ($osName.Contains("2008") -and -not $osName.Contains("R2")))
{
if ($versionString.Split('.')[3][0] -eq "1")
{
$currentOS = "$osName GDR"
$expectedVersion = New-Object System.Version("6.0.6002.19743")
}
elseif ($versionString.Split('.')[3][0] -eq "2")
{
$currentOS = "$osName LDR"
$expectedVersion = New-Object System.Version("6.0.6002.24067")
}
else
{
$currentOS = "$osName"
$expectedVersion = New-Object System.Version("9.9.9999.99999")
}
}
elseif ($osName.Contains("Windows 7") -or ($osName.Contains("2008 R2")))
{
$currentOS = "$osName LDR"
$expectedVersion = New-Object System.Version("6.1.7601.23689")
}
elseif ($osName.Contains("Windows 8.1") -or $osName.Contains("2012 R2"))
{
$currentOS = "$osName LDR"
$expectedVersion = New-Object System.Version("6.3.9600.18604")
}
elseif ($osName.Contains("Windows 8") -or $osName.Contains("2012"))
{
$currentOS = "$osName LDR"
$expectedVersion = New-Object System.Version("6.2.9200.22099")
}
elseif ($osName.Contains("Windows 10"))
{
if ($os.BuildNumber -eq "10240")
{
$currentOS = "$osName TH1"
$expectedVersion = New-Object System.Version("10.0.10240.17319")
}
elseif ($os.BuildNumber -eq "10586")
{
$currentOS = "$osName TH2"
$expectedVersion = New-Object System.Version("10.0.10586.839")
}
elseif ($os.BuildNumber -eq "14393")
{
$currentOS = "$($osName) RS1"
$expectedVersion = New-Object System.Version("10.0.14393.953")
}
elseif ($os.BuildNumber -eq "15063")
{
$currentOS = "$osName RS2"
"No need to Patch. RS2 is released as patched. "
return
}
}
elseif ($osName.Contains("2016"))
{
$currentOS = "$osName"
$expectedVersion = New-Object System.Version("10.0.14393.953")
}
elseif ($osName.Contains("Windows XP"))
{
$currentOS = "$osName"
$expectedVersion = New-Object System.Version("5.1.2600.7208")
}
elseif ($osName.Contains("Server 2003"))
{
$currentOS = "$osName"
$expectedVersion = New-Object System.Version("5.2.3790.6021")
}
else
{
Write-Host "Unable to determine OS applicability, please verify vulnerability state manually." -ForegroundColor Yellow
$currentOS = "$osName"
$expectedVersion = New-Object System.Version("9.9.9999.99999")
}
Write-Host "`n`nCurrent OS: $currentOS (Build Number $($os.BuildNumber))" -ForegroundColor Cyan
Write-Host "`nExpected Version of srv.sys: $($expectedVersion.ToString())" -ForegroundColor Cyan
Write-Host "`nActual Version of srv.sys: $($fileVersion.ToString())" -ForegroundColor Cyan
If ($($fileVersion.CompareTo($expectedVersion)) -lt 0)
{
Write-Host "`n`n"
Write-Host "System is NOT Patched" -ForegroundColor Red
}
Else
{
Write-Host "`n`n"
Write-Host "System is Patched" -ForegroundColor Green
}
#
Referencias
Guía para clientes acerca de los ataques de WannaCrypt
Centro de protección contra malware
Blog del Centro de protección contra malware de Microsoft
Este artículo se aplica a los siguientes productos:
-
Windows Server 2016
-
Windows 10, versión 1607
-
Windows 10, versión 1511
-
Windows 10, versión 1507
-
Windows Server 2012 R2
-
Windows 8.1
-
Windows Server 2012
-
Windows 8
-
Windows Server 2008 R2
-
Windows 7
-
Windows Server 2008 Service Pack 2
-
Windows Vista
-
Windows Server 2003 Service Pack 2
-
Windows XP